#!/usr/bin/env python3

import os

# ID таблицы, в ссылке вида
# https://docs.google.com/spreadsheets/d/XXX/edit
# XXX — это ID
table_id = os.getenv("GOOGLE_TABLE_ID")
if table_id is None:
	print("Задайте переменную окружения GOOGLE_TABLE_ID с ID Google-таблицы")
	exit(1)

# https://pikabu.ru/story/telegram_bot__bash_skript_dlya_lenivogo_menya_opyit_minigayd_i_obsuzhdenie_10082192
# https://dev.to/nathannosudo/bash-script-to-send-a-message-in-telegram-from-your-terminal-20c7
tg_api_key = os.getenv("TG_API_KEY")
if tg_api_key is None:
	print("Задайте переменную окружения TG_API_KEY с токеном от телеграм-бота")
	exit(1)

tg_chat_id = os.getenv("TG_CHAT_ID")
if tg_api_key is None:
	print("Задайте переменную окружения TG_CHAT_ID с ID телеграм-чата")
	exit(1)

import atexit
import openpyxl
import subprocess
import tempfile

# временный файл удаляется автоматически при завершении программы
tmp_xlsx = tempfile.NamedTemporaryFile(suffix=".xlsx")
print(tmp_xlsx.name)

# urllib.request.urlretrieve не заработала, не стал разбираться
curl = subprocess.run(["curl", "--fail", "-L", "https://docs.google.com/spreadsheets/d/" + table_id + "/export?format=xlsx", "-o", tmp_xlsx.name])
if curl.returncode != 0:
	print("Ошибка скачивания таблицы")
	exit(1)

# https://stackoverflow.com/a/63921588
wb = openpyxl.load_workbook(tmp_xlsx.name)
sheet = wb.active

# 4 места м/ж, первый адрес и еще три ячейки вниз
for i in [15, 34, 53]:
	# C15-C18
	a = 0
	while a <= 3:
		address = "C" + str(i+a)
		a = a+1
		print("... смотрим ячейку " + address)
		value = sheet[address].value
		if value is None:
			print("Ячейка " + address + " пуста!")
			curl = subprocess.run(["curl", "-s", "-X", "POST",
			                       "https://api.telegram.org/bot" + tg_api_key + "/sendMessage", "-d", "chat_id=" + tg_chat_id, "-d",
			                       "text=Свободна ячейка " + address
			                      ])
